package com.xnyzc.lhy.mis.entity.punishment;

import java.math.BigDecimal;

import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;

/**
*
* 司机处罚内容表
*
* @author cuixiaojian
* @since 2019-10-27
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="OaDUserPunishment对象", description="司机处罚内容表")
public class OaDUserPunishment implements Serializable {

private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "处罚id")
    @TableId(value="punishment_id", type = IdType.INPUT)
    private Long punishmentId;

    @ApiModelProperty(value = "司机id")
    private Long driverId;

    @ApiModelProperty(value = "用户姓名")
    @TableField(exist = false)
    private String driverName;

    @ApiModelProperty(value = "手机号码")
    @TableField(exist = false)
    private String driverPhone;

    @ApiModelProperty(value = "司机处罚详情id")
    private Long penaltyDetailId;

    @ApiModelProperty(value = "工单编号")
    @TableField(exist = false)
    private String workOrderNumber;

    @ApiModelProperty(value = "订单编号")
    @TableField(exist = false)
    private String orderNumber;

    @ApiModelProperty(value = "违规类型")
    @TableField(exist = false)
    private String punishmentType;

    @ApiModelProperty(value = "处罚操作人id")
    private Long punishmentPeratorId;

    @ApiModelProperty(value = "解封解冻id")
    private Long thawunlockId;

    @ApiModelProperty(value = "处罚类型（1.账号封禁 2.账户冻结 3.司机罚款4.警告）")
    private Integer punishmentStatus;

    @ApiModelProperty(value = "封号期限存天数")
    private Integer punishmentTitlesDeadline;

    @ApiModelProperty(value = "账号封禁是否执行完（0 未执行完 1 已执行完）")
    private Integer punishmentTitlesDeadlineFinished;

    @ApiModelProperty(value = "冻结期限 (冻结期限为24小时制)存天数")
    private Integer punishmentAccountFrozen;

    @ApiModelProperty(value = "账户冻结是否执行完（0 未执行完 1 已执行完）")
    private Integer punishmentAccountFrozenFinished;

    @ApiModelProperty(value = "罚款金额")
    private BigDecimal punishmentFines;

    @ApiModelProperty(value = "警告内容")
    private String warningContent;

    @ApiModelProperty(value = "是否删除(0:否,1:是)")
    private Integer deleted;

    @ApiModelProperty(value = "创建人")
    private Long createUser;

    @ApiModelProperty(value = "创建人")
    @TableField(exist = false)
    private String createUserName;

    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    private Date updateTime;

    @ApiModelProperty(value = "扩展字段1")
    private String expand1;

    @ApiModelProperty(value = "扩展字段2")
    private String expand2;

    @ApiModelProperty(value = "扩展字段3")
    private String expand3;


    public static final String PUNISHMENT_ID = "punishment_id";

    public static final String DRIVER_ID = "driver_id";

    public static final String PENALTY_DETAIL_ID = "penalty_detail_id";

    public static final String PUNISHMENT_PERATOR_ID = "punishment_perator_id";

    public static final String THAWUNLOCK_ID = "thawunlock_id";

    public static final String PUNISHMENT_STATUS = "punishment_status";

    public static final String PUNISHMENT_TITLES_DEADLINE = "punishment_titles_deadline";

    public static final String PUNISHMENT_TITLES_DEADLINE_FINISHED = "punishment_titles_deadline_finished";

    public static final String PUNISHMENT_ACCOUNT_FROZEN = "punishment_account_frozen";

    public static final String PUNISHMENT_ACCOUNT_FROZEN_FINISHED = "punishment_account_frozen_finished";

    public static final String PUNISHMENT_FINES = "punishment_fines";

    public static final String WARNING_CONTENT = "warning_content";

    public static final String DELETED = "deleted";

    public static final String CREATE_USER = "create_user";

    public static final String CREATE_TIME = "create_time";

    public static final String UPDATE_TIME = "update_time";

    public static final String EXPAND1 = "expand1";

    public static final String EXPAND2 = "expand2";

    public static final String EXPAND3 = "expand3";

}
